//
// Created by jsjxsy on 2022/8/29.
//
//指定类型
#include <iostream>
using namespace std;
template<typename T>
//没使用T类型
void func() {
  cout << "func" << endl;
}
//普通函数隐式类型转化
int add(int a, int b) {
  return a + b;
}

template<typename T>
//不支持隐式类型转化
T add2(T a, T b) {
  return a + b;
}

int main() {
  func<int>();

  int result = add(1, 2);
  cout << "result=" << result << endl;
  int result2 = add('c', 2);
  cout << "result2=" << result2 << endl;
  cout << add2(10, 20) << endl;
  //cout << add2(10, 'c') << endl;
  //指定类型
  cout << add2<int>(10, 'c') << endl;
  return 0;
}

